package com.chixing.day11.ExceptionR;

public class ExceptionDemo {
    public static void main(String[] args) {
        try {
            System.out.println("try111");
            Class.forName("com.chixing.day11_exception.MapSum"); // 报异常 new ClassNotFoundException();
            System.out.println("try222");
        } catch (ClassNotFoundException e) {
            System.out.println("catch222");
            e.printStackTrace();
        }

        System.out.println("okokokokokok");

     /*   try {
            System.out.println("try33333");
            ExceptionDemo.class.getField("").get(null);
            System.out.println("try44444");
        } catch (IllegalAccessException e) {
            e.printStackTrace();
        } catch (NoSuchFieldException e) {
            e.printStackTrace();
        }*/


        System.out.println("xxxxxxxxxxxxxxx");



        try{
            // 捕捉可能出现异常的代码
        }catch(Exception e){
            // 处理异常的代码
        }finally{
            // 作用：释放内存，节省空间 （流的关闭，数据库连接关闭等）
            // 语法：无论是否有异常，finally一定会执行
        }

        System.out.println("返回值：" +fun1());
    }

    /**
     * return :结束方法
     *  1. return  - finally (方法返回值为 10，finally a = 20 )

     */
    public  static int fun1(){
        int a = 10;
        try{
            Class.forName("com.chixing.day11_exception.MapSum");
            return a;
        }catch(ClassNotFoundException e){
            return -1;
        }finally{
            a = 20;
            System.out.println("finally, a= " + a);
        }


    }
}

